home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / C64 / T-TPUG Old Monthly Disks / (c)tf.d64 / run riki run.c (.txt) < prev    next >
Commodore BASIC  |  2007-02-04  |  8KB  |  119 lines

  1. 10 REM C64 'RUN RIKI RUN' BY ROGER D.   BURGE-BASED ON VIC DRAGON MAZE
  2. 20 REM NOVEMBER,1984, LONDON, ONTARIO,  CANADA
  3. 50 POKE45,129:POKE46,25:POKE51,41:POKE52,31:POKE55,41:POKE56,41:CLR:POKE53272,25
  4. 100 GOTO3100
  5. 150 POKEW2,G:IFPEEK(C+MY*F+MX)=FTTHENMM=PEEK(SM+MY*F+MX)
  6. 200 POKESM+MY*F+MX,MM:POKEC+MY*F+MX,FT
  7. 250 MX=MX+(MX>X)-(MX<X):MY=MY+(MY>Y)-(MY<Y)
  8. 300 MM=PEEK(SM+MY*F+MX):PRINTLEFT$(S$,MY+U)SPC(MX)"[153][193][155]":POKEW2,.:RETURN
  9. 350 SYSZS:FORI=UTOT1:FORJ=UTOT7:POKEB+I*F+J,WL:NEXT:NEXT
  10. 400 J=INT(RND(.)*FR):X3=J
  11. 450 P=A9+A(J)
  12. 500 IFPEEK(P)=WLTHENPOKEP,J:POKEA9+A(J)/D,HL:A9=P:GOTO400
  13. 550 J=(J+U)*-(J<E):IFJ<>X3THEN450
  14. 600 J=PEEK(A9):POKEA9,HL:IFJ<FRTHENA9=A9-A(J):GOTO400
  15. 650 A9=B+F+U:POKEA9-U,HL:POKEB+878,TG:SYS8138
  16. 700 POKE53280,.:POKE53281,.:PRINT"[147][146][155]";
  17. 750 FORI=UTO39:PRINT"[218]";:NEXT
  18. 800 PRINT"[211][155]";:FORI=UTO20:PRINTSPC(T7)"[218][218]";:NEXT:PRINT
  19. 850 FORI=UTO39:PRINT"[218]";:NEXT:PRINT"[146][145][157][219][155]";:GOSUB2850
  20. 900 X=.:Y=U:MX=38:MY=21:MM=91
  21. 950 PRINT"";:FORI=UTOU+L:FORJ=.TOL
  22. 1000 IFPEEK(B++I*F+J)<DTHENPRINT"[218]";:GOTO1100
  23. 1050 PRINT"[216]";
  24. 1100 NEXT:FORJ=.TOL:PRINT"[157]";:NEXT:PRINT"";:NEXT:PRINT"[211][155]"
  25. 1150 SYSIP:ONPEEK(251)GOTO1400,1300,1350,1250,1200,4400
  26. 1200 VX=.:VY=-U:GOTO1850
  27. 1250 VX=-U:VY=.:GOTO1850
  28. 1300 VX=U:VY=.:GOTO1850
  29. 1350 VX=.:VY=U:GOTO1850
  30. 1400 IFRND(.)<KTHENGOSUB150
  31. 1450 IFX<>MXORY<>MYTHEN1150
  32. 1500 IFPEEK(C+MY*F+MX)=FTTHENMM=PEEK(SM+MY*F+MX)
  33. 1550 POKESI+12,72:POKESI+13,72:POKESM+MY*F+MX,MM:POKEC+MY*F+MX,FT
  34. 1600 POKEC+Y*F+X,13
  35. 1650 FORI=.TO5:POKESM+Y*F+X,80:POKEW2,129:FORJ=.TO4:POKESI+8,(J+U)*D:NEXT
  36. 1700 FORT=.TOG:NEXT:POKESM+Y*F+X,81:POKEW2,.:FORTT=.TOG:NEXT:NEXT
  37. 1750 POKESI+12,17:POKESI+13,G:POKESI+8,TG
  38. 1800 FORT=.TOSM*D:NEXT:GOSUB4100:GOTO2600
  39. 1850 XX=X+VX:YY=Y+VY
  40. 1900 IFXX=MXANDYY=MYTHEN1500
  41. 1950 IFPEEK(B+YY*F+XX)<DTHENPOKEW1,17:FORI=.TOWL:NEXT:POKEW1,.:GOTO1150
  42. 2000 IFPEEK(B+YY*F+XX)=TGTHEN2450
  43. 2050 V=U-VX-D*(VY=U):PRINTLEFT$(S$,Y+U)SPC(X)"[216]"M$(V)"[211][155]":X=XX:Y=YY
  44. 2100 S=X+VX*L+VY*L:T=Y+VY*L-VX*L:V=-VX-D*(VY=U):IFV<.THENV=E
  45. 2150 FORI=.TOH:IFS<.ORS>T7ORT<UORT>T1THEN2350
  46. 2200 PRINTLEFT$(S$,T+U)SPC(S);:FORJ=ITOH:IFS<.ORS>T7ORT<UORT>T1THEN2350
  47. 2250 IFPEEK(B+T*F+S)<DTHENPRINT"[218]"M$(V);:GOTO2350
  48. 2300 PRINT"[216]"M$(V);
  49. 2350 S=S-VY:T=T+VX:NEXT
  50. 2400 GOTO1400
  51. 2450 POKE878+C,U:POKESI+U,33:POKESM+877,HL:POKESM+878,83:FORI=.TO10:POKEW1,33
  52. 2500 POKESM+878,87:FORJ=.TO64:NEXT:POKESM+878,83:FORT=.TO64:NEXT:POKEW1,.:NEXT
  53. 2550 POKESI+U,111:W=1:GOSUB4100:W=.
  54. 2600 PRINT"";:FORI=UTO23:PRINT"";:NEXT
  55. 2650 PRINT"@@@@@ [214]1 = QUIT [219] [214]7 = PLAY AGAIN @@@@@":POKE198,.
  56. 2700 GETI$:IFI$="[133]"THEN4400
  57. 2750 IFI$="[136]"THEN3700
  58. 2800 GOTO2700
  59. 2850 PRINTSPC(12)"[155] RUN RIKI RUN! ":FORI=UTOT1:PRINT"";:NEXT
  60. 2900 PRINTSPC(9)" FROM ROGER D. BURGE "
  61. 2950 PRINT"@@@@@@@@@@@@@@ [214]1 = QUIT @@@@@@@@@@@@@@"
  62. 3000 PRINT"@@@@@@@@@@@@@@  LEVEL"L"[157]  @@@@@@@@@@@@@@[155]"
  63. 3050 RETURN
  64. 3100 H=1:B=49152:U=1:C=55296:D=2:IP=7977:FT=15:SM=1024:K=.4:G=129
  65. 3150 F=40:T1=21:T8=38:E=3:TG=255:ZS=8118:FR=4:T7=37
  66. 3200 DIMA(E):A(.)=2:A(U)=-80:A(D)=-2:A(E)=80:HL=88:WL=90:A9=B+F+U:SI=54272
  67. 3250 FORI=SITOSI+24:POKEI,.:NEXT:W1=SI+4:VO=SI+24:W2=SI+11:POKESI+5,F:POKESI+6,F
  68. 3300 POKESI+U,111:POKESI+12,17:POKESI+13,G:POKESI+8,TG:POKEVO,FT
  69. 3350 S$="":M$(.)="":M$(U)="[145][157]":M$(D)="[157][157]":M$(E)="[157]"
  70. 3400 GOSUB4500
  71. 3450 PRINT""SPC(9)"INSTRUCTIONS?  (Y/N) ?";:POKE198,.
  72. 3500 PRINT"[157][146]?";:GETI$:IFI$=""THEN3650
  73. 3550 IFI$="Y"THENGOSUB4750:GOTO3700
  74. 3600 IFI$="N"THEN3700
  75. 3650 FORI=.TOG:NEXT:PRINT"[157]?";:FORI=.TOG:NEXT:GOTO3500
  76. 3700 H=RND(-TI):GOSUB4500:PRINT""SPC(10)"SKILL LEVEL: (1-4) ?
  77. 3750 [153]""[166]13)"<4 IS EASIEST>ONON";:[151]198,.
  78. 3800 [153]"CMDWAIT?";:[161]I$:[139]I$[178]""[167]3900
  79. 3850 L[178][197](I$):[139]L[177].[175]L[179]5[167]3950
  80. 3900 [129]I[178].[164]G:[130]:[153]"CMD?";:[129]I[178].[164]G:[130]:[137]3800
  81. 3950 H[178]D[172]L:[153]"CMDCMD"L
  82. 4000 [153]"WAIT A MINUTE FOR THE MAZE, PLEASE
  83. 4050 GOTO350
  84. 4100 PRINT"";:FORI=UTOT1:FORJ=.TOT8
  85. 4150 IFPEEK(B+I*F+J)<DTHENPRINT"[218]";:GOTO4250
  86. 4200 PRINT"[216]";
  87. 4250 NEXT:PRINT"";:NEXT:IFWTHENPRINTSPC(T8)"[145][211]";:GOTO4350
  88. 4300 PRINTSPC(T8)"[145][219]";
  89. 4350 GOSUB2850:RETURN
  90. 4400 FORT=.TOSM*D:NEXT:SYS64738
  91. 4500 POKE53281,U:POKE53280,U
  92. 4550 PRINT"[147][144]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@";
  93. 4600 PRINT"              RUN RIKI RUN              ";
  94. 4650 PRINT"          FROM  ROGER D. BURGE          ";
  95. 4700 PRINT"[146]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@":RETURN
  96. 4750 I$=" PRESS [214]7 TO CONTINUE "
  97. 4800 O$="                      "
  98. 4850 GOSUB4500:PRINT"THE OBJECT OF THIS GAME IS TO HELP RIKITIKI, THE ";
  99. 4900 PRINT"SNAKE MASTER, TO ESCAPE FROM  THE GIANT 'PHANTOM SLITHER' SNAKE.
  100. 4950 [153]"WHILE HUNTING THIS DEADLY ANIMAL UNDER-GROUND RIKI HAS BECOME ";
  101. 5000 [153]"TRAPPED IN AN    ANCIENT MYSTICAL MAZE WITH HIS PREY.
  102. 5050 PRINT"IT IS UP TO YOU TO HELP HIM ESCAPE BY  LEADING HIM TO THE MAZE ";
  103. 5100 PRINT"EXIT. THE EXIT  LOOKS LIKE THIS - [219].
  104. 5150 [153]"THERE'S JUST ONE PROBLEM. THE MAZE     ITSELF IS INVISIBLE!
  105. 5200 PRINT"HOWEVER, PART OF THE MAZE IN FRONT AND BESIDE YOU WILL BECOME ";
  106. 5250 PRINT"VISIBLE AS YOU   WALK. ANY PART OF THE MAZE THAT BECOMES ";
  107. 5300 PRINT"VISIBLE STAYS VISIBLE.
  108. 5350 [153]"ONE MORE THING, THE SNAKE CAN GOES     THROUGH WALLS, YOU CAN'T!
  109. 5400 POKE198,.:GOSUB5700:GOSUB4500
  110. 5450 PRINT" TO MOVE RIKI TIKI USE THE FOLLOWING    KEYS:
  111. 5500 [153][166]19)"ICMDSTOPWAIT^":[153][166]17)"JWAITSTOP_ $KWAIT":[153][166]19)"STOP&CMDCMDTHENMWAIT"
  112. 5550 [153]" OR USE A JOYSTICK PLUGGED INTO EITHER  GAMEPORT.
  113. 5600 PRINT" YOU CAN QUIT THIS GAME AT ANYTIME BY   PRESSING [214]1.
  114. 5650 [151]198,.:[141]5700:[142]
  115. 5700 [153]"";I$
  116. 5750 [161]A$:[139]A$[178]"LET"[167][142]
  117. 5800 [129]I[178].[164]TG[172]E:[130]:[153]"";O$:[129]I[178].[164]TG:[130]
  118. 5850 [137]5700
  119.